//分模块数据

import { reqCategoryListData, reqBannerListData,reqGetFloorsListData } from "@/api/index";

const state = {
  categoryList: [], //三级导航数据
  bannerList: [], //轮播图数据
  floorsList:[],//楼层数据
};
const mutations = {
  // 修改state保存三级导航数据
  SAVE_CATEGORY_LIST(state, payload) {
    state.categoryList = payload.data;
  },
  // 2. 存储轮播图数据
  SAVE_BANNER_LIST_DATA(state, bannerList) {
    state.bannerList = bannerList;
  },
  // 3.楼层数据
  SAVE_FLOORS_LIST_DATA(state,floorsList){
    state.floorsList = floorsList
  },
};
const actions = {
  // 1. 获取三级分数数据
  async getCategoryList({ commit }) {
    //Action函数接受一个和store实例具有相同方法和属性的context 对象，因此你可以调用 `context.commit` 提交一个 mutation，
    const result = await reqCategoryListData();
    if (result.code === 200) {
      commit("SAVE_CATEGORY_LIST", result);
    } else {
      console.log(result.message);
    }
  },

  // 2. 获取轮播图数据
  async getBannerListData({ commit }) {
    const result = await reqBannerListData();
    if (result.code === 200) {
      console.log(result);
      commit("SAVE_BANNER_LIST_DATA", result.data);
    } else {
      console.log(result.message);
    }
  },

  // 3. 获取楼层数据
  async getFloorsListData({commit}){
    const result = await reqGetFloorsListData()
    if (result.code===200) {
      commit('SAVE_FLOORS_LIST_DATA',result.data)      
    }else{console.log(result.message);}
  }
};
const getters = {};

export default {
  namespaced: true, // 设置命名空间 用来区分不同的模块
  state,
  actions,
  mutations,
  getters,
};
